====== Les liste de diffusions Mailman3 ======
Mailman3 est une application libre pour gérer des listes de diffusion électroniques, les listes de discussion et les « newsletters ».

Mailman3 est une ré-écriture complète de Mailman 2. Elle est basé sur le language Python et le framework Django.

L'installation et l’administration cette version 3 sont très différentes de la version 1 ou 2, ce qui rend les recherches ardues et conduit bien souvent à d'incommensurables déceptions. D'où la création de cette page.

===== Installation depuis le dépôt Ubuntu =====

Il existe moultes manières d'installer Mailman3 (pip, git, apt, Docker…), selon votre humeur, vos goûts et vos envies.

Reportez-vous à la [[https://docs.mailman3.org/en/latest/|documentation officielle Mailman3]] si nécessaire. (Attention, celle-ci ne couvre pas les paquets Ubuntu/Debian.)

Nous ne verrons ici que celle qui me semble être la plus rapide et la plus confortable, pour Ubuntu : l'utilisation des dépôts via cette merveilleuse commande ''apt-get''. Notez qu'elle devrait fonctionner de la même manière sous Debian.

Cette procédure a été écrite pour Ubuntu 20.04 LTS « Focal Fossa » mais devrait pouvoir être adaptée facilement pour des version ultérieures.

  * Commencez par mettre à jour vos dépôts :
''sudo apt-get update && sudo apt-get upgrade''

  * Il est recommandé de supprimer Apache2 s'il est présent (pour Nginx) :
''sudo apt-get remove --purge apache2''

  * Installez mailman3, ainsi que Postorius (interface web) et HyperKitty (outil d'archivage), et ce en une seule et même opération :
''sudo apt-get install mailman3-full''

Suivez les instructions lors de l'installation (les options par défaut fonctionnent plutôt pas mal).

  * Installez certbot pour la gestion des certificats SSL :
''sudo apt-get install python3-certbot-nginx''

  * Copiez le modèle de fichier de configuration Nginx fourni par Mailman3 vers le répertoire de Nginx :
''sudo cp /etc/mailman3/nginx.conf /etc/nginx/sites-available/mailman.conf''

  * Muni de votre éditeur texte favori, éditez le fichier ''/etc/nginx/sites-available/mailman.conf'' ainsi copié et remplacez le nom de domaine ''mailman.example.com'' par le vôtre :
''server_name mailman.example.com;''

  * Redémarrez Nginx :
''sudo service nginx restart''

  * Créez le certificat SSL :
''sudo certbot''

Suivez les instructions à l'écran.

  * Créez un compte superuser pour Mailman3 :
''sudo django-admin createsuperuser --pythonpath /usr/share/mailman3-web/ --settings settings''

Suivez les instructions à l'écran.

  * Avec le navigateur web qui vous plait, rendez-vous sur votre site à l'adresse https://mailman.example.com/admin.

Il ne vous reste plus qu'à configurer votre serveur !